home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / PROGMISC / PCSSP.LZH / PC-SSP.ZIP / STATMISC.ZIP / TTEST.FOR < prev   
Text File  |  1985-11-29  |  4KB  |  126 lines

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE TTEST
  5. C
  6. C        PURPOSE
  7. C           TO FIND CERTAIN T-STATISTICS ON THE MEANS OF POPULATIONS.
  8. C
  9. C        USAGE
  10. C           CALL TTEST (A,NA,B,NB,NOP,NDF,ANS)
  11. C
  12. C        DESCRIPTION OF PARAMETERS
  13. C           A   - INPUT VECTOR OF LENGTH NA CONTAINING DATA.
  14. C           NA  - NUMBER OF OBSERVATIONS IN A.
  15. C           B   - INPUT VECTOR OF LENGTH NB CONTAINING DATA.
  16. C           NB  - NUMBER OF OBSERVATIONS IN B.
  17. C           NOP - OPTIONS FOR VARIOUS HYPOTHESES..
  18. C                 NOP=1--- THAT POPULATION MEAN OF B = GIVEN VALUE A.
  19. C                          (SET NA=1)
  20. C                 NOP=2--- THAT POPULATION MEAN OF B = POPULATION MEAN
  21. C                          OF A, GIVEN THAT THE VARIANCE OF B = THE
  22. C                          VARIANCE OF A.
  23. C                 NOP=3--- THAT POPULATION MEAN OF B = POPULATION MEAN
  24. C                          OF A, GIVEN THAT THE VARIANCE OF B IS NOT
  25. C                          EQUAL TO THE VARIANCE OF A.
  26. C                 NOP=4--- THAT POPULATION MEAN OF B = POPULATION MEAN
  27. C                          OF A, GIVEN NO INFORMATION ABOUT VARIANCES OF
  28. C                          A AND B.  (SET NA=NB)
  29. C           NDF - OUTPUT VARIABLE CONTAINING DEGREES OF FREEDOM ASSOCI-
  30. C                 ATED WITH T-STATISTIC CALCULATED.
  31. C           ANS - T-STATISTIC FOR GIVEN HYPOTHESIS.
  32. C
  33. C        REMARKS
  34. C           NA AND NB MUST BE GREATER THAN 1, EXCEPT THAT NA=1 IN
  35. C           OPTION 1. NA AND NB MUST BE THE SAME IN OPTION 4.
  36. C           IF NOP IS OTHER THAN 1, 2, 3 OR 4, DEGREES OF FREEDOM AND
  37. C           T-STATISTIC WILL NOT BE CALCULATED.  NDF AND ANS WILL BE
  38. C           SET TO ZERO.
  39. C
  40. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  41. C           NONE
  42. C
  43. C        METHOD
  44. C           REFER TO OSTLE, BERNARD, 'STATISTICS IN RESEARCH', IOWA
  45. C           STATE COLLEGE PRESS, 1954, CHAPTER 5.
  46. C
  47. C     ..................................................................
  48. C
  49.       SUBROUTINE TTEST (A,NA,B,NB,NOP,NDF,ANS)
  50.       DIMENSION A(1),B(1)
  51. C
  52. C     INITIALIZATION
  53. C
  54.       NDF=0
  55.       ANS=0.0
  56. C
  57. C     CALCULATE THE MEAN OF A
  58. C
  59.       AMEAN=0.0
  60.       DO 110 I=1,NA
  61.   110 AMEAN=AMEAN+A(I)
  62.       FNA=NA
  63.       AMEAN=AMEAN/FNA
  64. C
  65. C     CALCULATE THE MEAN OF B
  66. C
  67.   115 BMEAN=0.0
  68.       DO 120 I=1,NB
  69.   120 BMEAN=BMEAN+B(I)
  70.       FNB=NB
  71.       BMEAN=BMEAN/FNB
  72. C
  73.       IF(NOP-4) 122, 180, 200
  74.   122 IF(NOP-1) 200, 135, 125
  75. C
  76. C     CALCULATE THE VARIANCE OF A
  77. C
  78.   125 SA2=0.0
  79.       DO 130 I=1,NA
  80.   130 SA2=SA2+(A(I)-AMEAN)**2
  81.       SA2=SA2/(FNA-1.0)
  82. C
  83. C     CALCULATE THE VARIANCE OF B
  84. C
  85.   135 SB2=0.0
  86.       DO 140 I=1,NB
  87.   140 SB2=SB2+(B(I)-BMEAN)**2
  88.       SB2=SB2/(FNB-1.0)
  89. C
  90.       GO TO (150,160,170), NOP
  91. C
  92. C        OPTION 1
  93. C
  94.   150 ANS=((BMEAN-AMEAN)/SQRT(SB2))*SQRT(FNB)
  95.       NDF=NB-1
  96.       GO TO 200
  97. C
  98. C        OPTION 2
  99. C
  100.   160 NDF=NA+NB-2
  101.       FNDF=NDF
  102.       S=SQRT(((FNA-1.0)*SA2+(FNB-1.0)*SB2)/FNDF)
  103.       ANS=((BMEAN-AMEAN)/S)*(1.0/SQRT(1.0/FNA+1.0/FNB))
  104.       GO TO 200
  105. C
  106. C        OPTION 3
  107. C
  108.   170 ANS=(BMEAN-AMEAN)/SQRT(SA2/FNA+SB2/FNB)
  109.       A1=(SA2/FNA+SB2/FNB)**2
  110.       A2=(SA2/FNA)**2/(FNA+1.0)+(SB2/FNB)**2/(FNB+1.0)
  111.       NDF=A1/A2-2.0+0.5
  112.       GO TO 200
  113. C
  114. C        OPTION 4
  115. C
  116.   180 SD=0.0
  117.       D=BMEAN-AMEAN
  118.       DO 190 I=1,NB
  119.   190 SD=SD+(B(I)-A(I)-D)**2
  120.       SD=SQRT(SD/(FNB-1.0))
  121.       ANS=(D/SD)*SQRT(FNB)
  122.       NDF=NB-1
  123. C
  124.   200 RETURN
  125.       END
  126.